home *** CD-ROM | disk | FTP | other *** search
- Path: ohstpy.mps.ohio-state.edu!vancleef
- From: vancleef@ohstpy.mps.ohio-state.edu
- Newsgroups: comp.object,comp.software-eng,comp.lang.c++
- Subject: Re: Moving from C to C++
- Message-ID: <1996Jan10.024013.8711@ohstpy>
- Date: 10 Jan 96 02:40:13 -0500
- References: <4cs44p$3pk@ixnews8.ix.netcom.com> <30F2A73C.7519@i-o.com>
- Organization: The Ohio State University, Department of Physics
-
- In article <30F2A73C.7519@i-o.com>, "David F. St.Clair" <dstclair@i-o.com> writes:
- > Rocco Pochy wrote:
- >
- >> Our company is looking at moving toward C++ and the object-oriented
- >> paradigm. Unfortunately, the engineering staff is trained in C. Does
- >> anybody have any experiences in moving from a structure C environment
- >> to that of an object-oriented C++ environment?
- >>
- >> Is it better to ease everyone into using C++ as a better C and take
- >> advantage of the encapsulation, getting people familar on the tools
- >> before jumping into a full object-oriented development? Or should
- >> one jump right in a take the learning curve hit, sacrificing time to
- >> market?
- >>
- >> I would appreciate and feedback on the pitfalls and benefits to these
- >> approaches.
- >>
- >
- > I've got a bit of experience doing this same thing from both a technical and
- > managerial position. I've been working in C++ and OO for about 8 years now
- > and have moved (or are moving) two organization from a predominantly 'C' trained
- > staff to C++ and OOP.
- >
- > First you need to evaluate the expertise of your staff. Do you have people
- > who alreay are trained and have experience in C++? What about OO? If you
- > don't have strong in-house OO expertise, then forget about jumping straight
- > into OO. If you have some strong C++ people and rest of the staff is
- > motivated in learning new things, you might get by without formal C++ training
- > (although I don't recommend it).
- >
- > I'm BIG on training. Start the new project off right with a 5 day C++ training
- > class. There are several good people to bring in, expect to pay about
- > $15K for a class of <20.
- >
- > Start using C++ as a better C. Get your group accustomed to the language and
- > the new tools. Stay away from most things that are OO.
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
- Nonsense. The reason FOR using C++ is for OO.
-
-
- >
- > After around 3-6 months, get some formal OO training. Suitcase the course in
- > as well. There are several good 5 day courses out there. Include managers in the
- > training classes. Make a big production of training and stress the importance.
- >
-
- Treating OO like it's the 'chapter at the end of the book' is a waste of
- their time. You must teach OO from the beginning.
-
- C++ is a better C only to C programmers who refuse to change from
- structures programming. If you C++ programmers, you are going to have to
- teach OO from the first day. Anythig else is a waste of time.
-
-
- > Don't allow people to jump into OO waters without a lot of guidance. This will
- > be pretty hard since the more talented people will be pushing you to allow them
- > to go whole hog. But the failure potential is pretty high. Failure can be
- > devastating when introducing new technologies.
- >
- > Once you've got a bit of OO training, pick a small piece of the project that
- > is well understood and obviously fits an OO paridigm. I know, I know EVERYTHING
- > is an object but sometimes modeling isn't quite as straight forward as the
- > books profess.
- >
- > One thing I'd definitely recommend, do not jump into C++ and OOP all at once. Chances
- > are you would not just be suffering from time loss due to a steep learning curve but
- > you would probably be dooming your project and the future of OO within your company.
- >
- > The migration from C to C++/OOP is about 12-18 month process. Expect a 10-15%
- > productivity loss during the first 3-6 months. This should be made up in
- > the last 9-12 months. The benefits you are going to get from going to C++/OOP
- > are not going to realized on the current project but will be more readily
- > identified on the next project (or future releases of the current project).
- >
-
- I programmed in C for years. It took me *one week* to learn C++ when thrown
- into 50,000 lines of badly written C++ (written by C programmers who
- tried to use some OO concepts) and asked to 'make it work'. I
- did. I will never look back.
-
-
- > Look for evolutionary changes/benefits, not revolutionary.
- >
-
- Sorry, but C++ is revolutionary. C++ is NOT a better C and teaching this
- to people on your payroll is a waste of money.
-
- > This is of a surface level discussion. Feel free to drop me note and we can
- > talk more in depth.
- >
- > --
- > Dave St.Clair dstclair@i-o.com
- > Project Manager Input/Output
-
-
-